/**
 * easyui 简单封装
 * 仅封装window , panel , combox ,tree ,grid 
 * 对使用的组件会进行ID 重复检查, 组件注册
 * @author yu
 * @since 1.0
 */
var datacross = new Function();

/**
 * ui 组件存放地址
 */
datacross.com = [];

/**
 * 判断注册组件是否存在
 * @param id
 * @returns {Boolean}
 */
datacross.judgeCom=	function(id){
	for(var i=0;i<datacross.com.length;i++){
		if(datacross.com[i].id==id)return true;
	}
	return false;
};
/**
 * 创建容器方法
 * 仅支持window , panel , 公用的combox ,tree ,grid
 * @param obj id ： 容器ID ， type：容器类型 
 * 
 */
datacross.create	=	function(obj){
	if(obj==null || obj=='')obj={};
	if(obj.id==null || obj.id==''){
		alert("ID不能为空.");
		return false;
	}
	if(obj.uiType==null || obj.uiType==''){
		alert('id:'+obj.id+'的类型不能为空！');
		return false;
	}
	for(var i=0;i<datacross.com.length;i++){
		var objTmp = datacross.com[i];
		if(objTmp.source.id==obj.id){
			alert('ID:'+obj.id+'匹配一个以上. 存在的类型为:'+objTmp.source.uiType);
			return false;
		}
	}
	var uiObj =null;
	try{
		eval('uiObj=new datacross.'+obj.uiType);
		var comTmp = uiObj.init(obj);
		uiObj.id=obj.id;
		comTmp.id=obj.id;
		comTmp.uiType = obj.uiType;
		datacross.com.push({'source':comTmp,'uiObj':uiObj});
	}catch(e){
		console.log(e);
		alert('初始化窗口异常！');
		return false;
	}
};
/**
 * 判断初始化组件是否存在
 * @param id 组件ID
 * @returns {Boolean} true:存在,  false:不存在
 */
datacross.judgeCom	=	function(id){
	for(var i=0;i<datacross.com.length;i++){
		var obj = datacross.com[i];
		if(obj.source.id==id){
			return true;
		}
	}
	return false;
};
/**
 * 获取注册的组件
 * @param id
 * @returns
 */
datacross.getCom	=	function(id){
	for(var i=0;i<datacross.com.length;i++){
		var obj = datacross.com[i];
		if(obj.source.id==id){
			return obj;
		}
	}
	return null;
};
/**
 * 随机一个整数
 * @param len 整数长度
 */
datacross.randomInt = function(len){
	var rnd="";
	for(var i=0;i<len;i++)rnd+=Math.floor(Math.random()*10);
	return rnd;
};
/**
 * 稳定转json对象
 * @param val
 * @returns
 */
datacross.decode = function(val){
	var res = {};
	if(typeof(val)=='object'){
		return val;
	}
	if(val != null || val!= ''){
		try{
			eval('res='+val);
		}catch(e){}
	}
	return res;
};
/**
 * 返回字段节点
 * @param id 字段ID
 */
datacross.getDom	=	function(id){
	var arry = document.getElementById(id).parentNode.children;
  	var index = 0;
  	for(;index<arry.length;index++){
  		if(arry[index].id==id)break;
  	}
  	var needDom = arry[index+1].children[0];
  	return needDom;
  	function evenFn(dom){
  		obj.fn(dom);
  	}
  	try{
  		eval('needDom.'+obj.event+'='+obj.fn+'(needDom)');
  	}catch(e){
  		console.log(e);
  	}
};





